home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / linux / udf_fs_i.h < prev    next >
C/C++ Source or Header  |  2005-10-13  |  2KB  |  79 lines

  1. /*
  2.  * udf_fs_i.h
  3.  *
  4.  * This file is intended for the Linux kernel/module. 
  5.  *
  6.  * CONTACTS
  7.  *    E-mail regarding any portion of the Linux UDF file system should be
  8.  *    directed to the development team mailing list (run by majordomo):
  9.  *        linux_udf@hpesjro.fc.hp.com
  10.  *
  11.  * COPYRIGHT
  12.  *    This file is distributed under the terms of the GNU General Public
  13.  *    License (GPL). Copies of the GPL can be obtained from:
  14.  *        ftp://prep.ai.mit.edu/pub/gnu/GPL
  15.  *    Each contributing author retains all rights to their own work.
  16.  */
  17.  
  18. #ifndef _UDF_FS_I_H
  19. #define _UDF_FS_I_H 1
  20.  
  21. #ifdef __KERNEL__
  22.  
  23. #ifndef _ECMA_167_H
  24. typedef struct
  25. {
  26.     __u32            logicalBlockNum;
  27.     __u16            partitionReferenceNum;
  28. } __attribute__ ((packed)) lb_addr;
  29.  
  30. typedef struct
  31. {
  32.     __u32            extLength;
  33.     __u32            extPosition;
  34. } __attribute__ ((packed)) short_ad;
  35.  
  36. typedef struct
  37. {
  38.     __u32            extLength;
  39.     lb_addr            extLocation;
  40.     __u8            impUse[6];
  41. } __attribute__ ((packed)) long_ad;
  42. #endif
  43.  
  44. struct udf_inode_info
  45. {
  46.     struct timespec        i_crtime;
  47.     /* Physical address of inode */
  48.     kernel_lb_addr        i_location;
  49.     __u64            i_unique;
  50.     __u32            i_lenEAttr;
  51.     __u32            i_lenAlloc;
  52.     __u64            i_lenExtents;
  53.     __u32            i_next_alloc_block;
  54.     __u32            i_next_alloc_goal;
  55.     unsigned        i_alloc_type : 3;
  56.     unsigned        i_efe : 1;
  57.     unsigned        i_use : 1;
  58.     unsigned        i_strat4096 : 1;
  59.     unsigned        reserved : 26;
  60.     union
  61.     {
  62.         short_ad    *i_sad;
  63.         long_ad        *i_lad;
  64.         __u8        *i_data;
  65.     } i_ext;
  66.     struct inode vfs_inode;
  67. };
  68.  
  69. #endif
  70.  
  71. /* exported IOCTLs, we have 'l', 0x40-0x7f */
  72.  
  73. #define UDF_GETEASIZE   _IOR('l', 0x40, int)
  74. #define UDF_GETEABLOCK  _IOR('l', 0x41, void *)
  75. #define UDF_GETVOLIDENT _IOR('l', 0x42, void *)
  76. #define UDF_RELOCATE_BLOCKS _IOWR('l', 0x43, long)
  77.  
  78. #endif /* _UDF_FS_I_H */
  79.